﻿#region Código Gerado Pela Fábrica de Software (Using)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;
using EnterpriseLibraryWrapper;
using itau.im.entidade;
#endregion

#region Código Gerado Pela Fábrica de Software (Namespace)
namespace itau.im.negocio
{
    #region Código Gerado Pela Fábrica de Software (Interface)

    /// <summary>
    /// **************************************************************************************************<BR/>
    /// AUTOR           : Fábrica de Software                                                             <BR/>
    /// DATA DE CRIAÇÃO : 03/08/2010                                                                      <BR/>
    /// ALTERADO POR    :                                                                                 <BR/>
    /// DATA ALTERAÇÃO  :                                                                                 <BR/>
    /// OBJETIVO        : Interface "ICalendarioBS" utilizada para exibir o servico.                      <BR/>
    /// **************************************************************************************************<BR/>
    /// </summary>
    [ServiceContract]
    public interface ICalendarioBS
    {
        #region Código Gerado Pela Fábrica de Software (Métodos)

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        IList<PracaCalendario> ObterPracasCalendario();

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        int CalcularDiasCorridosEntre(DateTime data1, DateTime data2);

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        IList<DiaInfo> CalcularDiasCorridosPorDiasUteis(DateTime dataReferencia, int diasUteis);

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        IList<int> NormalizarDiasCorridosParaDiasCorridosUteis(DateTime dataReferencia, IList<int> listaDiasCorridos);

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        int CalcularDiasUteisEntre(DateTime data1, DateTime data2);

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        IList<string> ObtemFeriadosNacionaisIntervalo(DateTime data1, DateTime data2);

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        bool EhFeriadoNacional(DateTime data);

        #endregion
    }
    #endregion
}
#endregion
